Skip to content

Remove github.com/jackc/pgx/v4 dependency#4379

Merged
kyleconroy merged 1 commit intomainfrom
claude/remove-pgx-v4-dependency
Apr 17, 2026
Merged

Remove github.com/jackc/pgx/v4 dependency#4379
kyleconroy merged 1 commit intomainfrom
claude/remove-pgx-v4-dependency

Conversation

@kyleconroy
Copy link
Copy Markdown
Collaborator

Summary

  • Migrates the sqlc-pg-gen internal tool from pgx/v4 to pgx/v5; the Connect/Query/Scan API surface used here is identical
  • Deletes the unused internal/sqltest/PostgreSQLPgx helper
  • go mod tidy drops pgx/v4 plus the transitively-unused chunkreader/v2, pgconn, pgio, pgproto3/v2, pgtype, and golang.org/x/crypto

pgx/v4 remains a supported code-generation target for sqlc users — the SQLDriverPGXV4 constant and the import string emitted into generated code are unchanged. Only sqlc's own build-time dependency on the library is removed.

Test plan

  • go build ./... clean
  • go test ./internal/sqltest/... ./internal/tools/... ./internal/codegen/... passes
  • Full --tags=examples CI run passes
  • sqlc-pg-gen regenerates catalog files correctly against a live PostgreSQL

🤖 Generated with Claude Code

sqlc's own code no longer needs pgx/v4 at build time:

- Delete internal/sqltest/pgx.go — the PostgreSQLPgx helper had no callers.
- Migrate the sqlc-pg-gen internal tool from pgx/v4 to pgx/v5; the
  Connect/Query/Scan API surface used here is identical.

pgx/v4 remains a supported code-generation target for sqlc users
(SQLDriverPGXV4 constant and the imports emitted into generated code
are unchanged); only sqlc's own dependency on the library is removed.
go mod tidy also drops chunkreader/v2, pgconn, pgio, pgproto3/v2,
pgtype, and golang.org/x/crypto as transitively unused.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@kyleconroy kyleconroy merged commit 93e1a17 into main Apr 17, 2026
13 checks passed
@kyleconroy kyleconroy deleted the claude/remove-pgx-v4-dependency branch April 17, 2026 04:41
khepin added a commit to khepin/sqlc that referenced this pull request Apr 18, 2026
…te-order-by-args

* 'main' of https://github.com/sqlc-dev/sqlc:
  Map xid8 to pgtype.Uint64 for pgx/v5 (sqlc-dev#4387)
  Rename :one return variable when it conflicts with a parameter (sqlc-dev#4383)
  Coerce SQLite JSONB output regardless of type casing (sqlc-dev#4385)
  Dedupe sqlc.arg parameters wrapped in a type cast for MySQL (sqlc-dev#4384)
  Preserve MySQL optimizer hints in generated query text (sqlc-dev#4382)
  Skip CI/RTD builds when the change is irrelevant (sqlc-dev#4381)
  build(deps): bump the production-dependencies group across 1 directory with 11 updates (sqlc-dev#4380)
  build(deps): bump the production-dependencies group across 1 directory with 5 updates (sqlc-dev#4368)
  build(deps): bump pygments from 2.19.2 to 2.20.0 in /docs (sqlc-dev#4363)
  build(deps): bump requests from 2.32.5 to 2.33.0 in /docs (sqlc-dev#4357)
  Remove github.com/jackc/pgx/v4 dependency (sqlc-dev#4379)
  Upgrade Go toolchain to 1.26.2 (sqlc-dev#4378)
  build(deps): bump actions/upload-artifact from 6 to 7 (sqlc-dev#4320)
  docs: add sqlc-gen-sqlx to community language support (sqlc-dev#4371)
  build(deps): bump github.com/jackc/pgx/v5 from 5.8.0 to 5.9.0 (sqlc-dev#4377)
  Catch invalid ON CONFLICT DO UPDATE column references (sqlc-dev#4366)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant